package ro.sergiu.configmanager;

import ro.sergiu.configmanager.annotations.ConfigSource;
import ro.sergiu.configmanager.annotations.ErrorBehaviorType;
import ro.sergiu.configmanager.annotations.Ignore;
import ro.sergiu.configmanager.annotations.PropertyName;

/**
 *
 * @author Toporjinschi
 */
@ConfigSource(value = "confTest.properties", errorBehavior = ErrorBehaviorType.LOAD_DEFAULT)
public class Settings {

    @Ignore
    private String propIgnore;
    private String propString;
    @PropertyName("propString")
    private String propStringPropName;
    private Integer propInt;
    private Float propFloat;
    private Double propDouble;
    private Long propLong;
    private Byte propByte;
    private Boolean propBooleanTrue;
    private Boolean propBooleanFalse;

    public String getPropString() {
        return propString;
    }

    public void setPropString(String propString) {
        this.propString = propString;
    }

    public Integer getPropInt() {
        return propInt;
    }

    public void setPropInt(Integer propInt) {
        this.propInt = propInt;
    }

    public Float getPropFloat() {
        return propFloat;
    }

    public void setPropFloat(Float propFloat) {
        this.propFloat = propFloat;
    }

    public Double getPropDouble() {
        return propDouble;
    }

    public void setPropDouble(Double propDouble) {
        this.propDouble = propDouble;
    }

    public Boolean isPropBooleanTrue() {
        return propBooleanTrue;
    }

    public void setPropBooleanTrue(Boolean propBooleanTrue) {
        this.propBooleanTrue = propBooleanTrue;
    }

    public Boolean isPropBooleanFalse() {
        return propBooleanFalse;
    }

    public void setPropBooleanFalse(Boolean propBooleanFalse) {
        this.propBooleanFalse = propBooleanFalse;
    }

    public String getPropStringPropName() {
        return propStringPropName;
    }

    public void setPropStringPropName(String propStringPropName) {
        this.propStringPropName = propStringPropName;
    }

    public Long getPropLong() {
        return propLong;
    }

    public void setPropLong(Long propLong) {
        this.propLong = propLong;
    }

    public Byte getPropByte() {
        return propByte;
    }

    public void setPropByte(Byte propByte) {
        this.propByte = propByte;
    }

    public String getPropIgnore() {
        return propIgnore;
    }

    public void setPropIgnore(String propIgnore) {
        this.propIgnore = propIgnore;
    }

    @Override
    public String toString() {
        return "SettingsError{" + "propIgnore=" + propIgnore + ", propString=" + propString + ", propStringPropName=" + propStringPropName + ", propInt=" + propInt + ", propFloat=" + propFloat + ", propDouble=" + propDouble + ", propLong=" + propLong + ", propByte=" + propByte + ", propBooleanTrue=" + propBooleanTrue + ", propBooleanFalse=" + propBooleanFalse + '}';
    }

}
